﻿using System;
using Microsoft.Xna.Framework.Audio;

namespace Terraria.ModLoader.Audio
{
	// Token: 0x02000272 RID: 626
	public abstract class Music
	{
		// Token: 0x060019CC RID: 6604 RVA: 0x0001245F File Offset: 0x0001065F
		public static implicit operator Music(Cue cue)
		{
			return new MusicCue
			{
				cue = cue
			};
		}

		// Token: 0x170001BA RID: 442
		// (get) Token: 0x060019CD RID: 6605
		public abstract bool IsDisposed { get; }

		// Token: 0x170001BB RID: 443
		// (get) Token: 0x060019CE RID: 6606
		public abstract bool IsPaused { get; }

		// Token: 0x170001BC RID: 444
		// (get) Token: 0x060019CF RID: 6607
		public abstract bool IsPlaying { get; }

		// Token: 0x060019D0 RID: 6608
		public abstract void Pause();

		// Token: 0x060019D1 RID: 6609
		public abstract void Play();

		// Token: 0x060019D2 RID: 6610
		public abstract void Resume();

		// Token: 0x060019D3 RID: 6611
		public abstract void Stop(AudioStopOptions options);

		// Token: 0x060019D4 RID: 6612
		public abstract void SetVariable(string name, float value);

		// Token: 0x060019D5 RID: 6613 RVA: 0x00006B58 File Offset: 0x00004D58
		public virtual void CheckBuffer()
		{
		}
	}
}
